home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Plus Special 26
/
AMIGAplus Sonderheft 26 (2000)(Falke)(DE)(Track 1 of 2)[!].iso
/
Updates
/
HD-Installer
/
-WHDLoad-
/
WHDLoad_dev
/
Src
/
ReadMeFirst
< prev
next >
Wrap
Text File
|
1999-03-29
|
4KB
|
140 lines
Here you will find several source code files which will help you in
developing your own installs using WHDLoad.
slave-examples
--------------
The Slave examples are the recommend reading if you want self write
Slaves.
winditup.asm:
this is a very simple Slave to give you an overview how a Slave is
working, the Slave loads from a disk image and uses the keyboard
routine provided in the sources directory
oscar.asm:
this is a simple example for using usual files, it also contains a
simple exec.AllocMem() emulation which works fine as long as no
FreeMem() is required
interphase.asm:
shows the usage of "savegame.s"
turrican.asm
it shows the usage of "picture.s" and the "blitfix*.s" sources,
also an example how to use WHDLoad for disk imaging
imager-examples
---------------
These sources are written to create disk images using "The Patcher".
Using the Patcher is the prefered way to create images from originals
with an own diskformat. The advantages against using WHDLoad or custom
programs are:
- running fully in multitasking
- supports DF0: - DF3:
- easy to debug
- is stable
The GUI is currently not very nice (1.3 compatible) but it works fine.
ik+.imager.asm:
an simple imager for one disk only, a strange decoding routine but
nothing special further
bloodmoney.imager.asm:
this is interesting because the files on the disks are located only
at lower or upper disk side, therefore the images are created
respectively -> first all even tracks and then all odd ones
(you are a good coder ? then always check your installs also without
PreLoad or better with FileLog and remember not everbody has tons of
megs of memory so that WHDLoad can cache all files... -> avoid
endless load orgies)
interphase.imager.asm:
this imager uses the track display feature of the Patcher v1.05, it
uses clearly exec.RawDoFmt to format the output string
macros
------
some macros which are required for some sources
pics
----
some pictures which are required for some sources
programs
--------
some small tools, maybe useful for you
WCmp:
simple compare utility, has wide output (16 bytes per line), shows
only differences, doesn't load whole file but works buffered,
interruptable with ^C
WDate:
I use this to insert the date and time of assembling into the
created executable (see example-slaves)
WVer:
I use this to increase the revision number each time the source
will be assembled (similar usage as WDate)
sources
-------
these sources are code fragments containing one or more sub routines,
they should be used by including them at the bottom of the Slave
source and calling from the slave source
blitfix_dn_58a6.s:
this routine will patch all instructions "move.w dn,($58,a6)" with a
function which executes the same instruction but waits additional
after this for the end of the blitter activity, it may be used to
fix programs which will not correctly wait for blitter finish
blitfix_imm_58a6.s:
similar to blitfix_dn_58a6.s but patchs all "move.w #xxxx,($58,a6)"
keyboard.s:
this file contains a complete keyboard initialisation and the required
interrupt handler, it will be useful for programs without a own
keyboard handling (most demos) or for programs with broken handling
(in this case you have to disable the original)
savegames.s:
this routine contains a system for multiple savegames, there is
special code which creates a interface to select a save position and
to enter a description for each savegame
stfix.s:
contains a routine to fix the old soundtracker playback routine, this
old routine used in many games and demos contains an empty dbf loop
which wont work correctly on faster machines, the dbf loop will be
replaced by a wait based on the vertical raster position
PLEASE NOTE
-----------
My Assembler is able to optimize the addressing mode (and much more):
(xxxxxxxx).L --> (d16,PC)
if possible.
So I never do this myself !
Remember Slaves must be 100% PC-relativ !
So if your Assembler isn't able to do this and you want to use these
sources you have to add the "(pc)" by yourself. (or just get a better
assembler!)